class HomepagebeanEntity {

//	{
//	"Success": 1,
//	"ErrorCode": 0,
//	"ErrorMsg": null,
//	"CallInfo": {
//	"rotary_planting_map": [{
//	"id": "444",
//	"action_val": "10",
//	"level": "first",
//	"action_type": "3",
//	"icon": "http:\/\/aweb-test.oss-cn-hangzhou.aliyuncs.com\/wechat-app-images\/banner1.png"
//	}],
//	"img": "http:\/\/imark.oss-cn-shanghai.aliyuncs.com\/files\/20190805102638334.png",
//	"new_arrivals": [{
//	"id": "12",
//	"product_id": "8",
//	"brand_id": "1",
//	"brand_name": "花花牛",
//	"supplier_id": "1",
//	"supplier_name": "花花牛",
//	"supply_channel": "0",
//	"supplier_icon": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190905151157218.jpg",
//	"is_market": null,
//	"activity_id": null,
//	"name": "花花牛 领畅酸奶250g*8瓶 低温奶黄桃燕麦味酸牛奶短保早餐牛奶 ",
//	"icon_url": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190905151157218.jpg",
//	"unit_name": "250g*8瓶 ",
//	"unit_price": "52.00",
//	"sell_price": "70.00",
//	"rank_price": "70.00",
//	"sku_attr": ["统一属性"],
//	"is_show_specs": "0",
//	"profit": "-18",
//	"is_show_price": "1",
//	"forwarding_description": "花花牛 领畅酸奶250g*8瓶 低温奶黄桃燕麦味酸牛奶短保早餐牛奶",
//	"forwarding_imgs": ["http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190905151217384.jpg"],
//	"attribute_list": {
//	"attribut": [{
//	"attr_name": "属性",
//	"attributes_item": ["统一属性"]
//	}],
//	"sku_path": [{
//	"sku_id": "12",
//	"product_id": "8",
//	"sellprice": "70.00",
//	"basic_price": "52.00",
//	"cost_price": "50.00",
//	"unit_price": "52.00",
//	"attr": "属性:统一属性",
//	"sku_attr_info": [{
//	"attr_name": "属性",
//	"attr_value": "统一属性"
//	}],
//	"imgurl": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190905151110153.jpg",
//	"customer_plus_price": "0.00",
//	"customer_sale_price": "0.00",
//	"customer_sale_status": "1"
//	}]
//	},
//	"stock": null,
//	"activity_type": null,
//	"activity_num": null,
//	"activity_num_price": null,
//	"activity_discount": null
//	}, {
//	"id": "23",
//	"product_id": "17",
//	"brand_id": "1",
//	"brand_name": "花花牛",
//	"supplier_id": "1",
//	"supplier_name": "花花牛",
//	"supply_channel": "0",
//	"supplier_icon": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190924134810140.png",
//	"is_market": null,
//	"activity_id": null,
//	"name": "优乐美",
//	"icon_url": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190924134810140.png",
//	"unit_name": "盒",
//	"unit_price": "4.00",
//	"sell_price": "2.00",
//	"rank_price": "2.00",
//	"sku_attr": ["统一属性"],
//	"is_show_specs": "0",
//	"profit": "2",
//	"is_show_price": "1",
//	"forwarding_description": "商品名称：蒙牛 真果粒牛奶饮品 四种口味250g*24 缤纷 礼盒装商品编号：10192164670店铺： 蒙牛官方旗舰店商品毛重：6.96kg货号：6923644281908是否含糖：含糖口味：混合口味脂肪含量：全脂类别：风味奶包装：礼盒装适用人群：成人，中老年，青少年是否有机：非有机",
//	"forwarding_imgs": ["http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190924134838698.png"],
//	"attribute_list": {
//	"attribut": [{
//	"attr_name": "属性",
//	"attributes_item": ["统一属性"]
//	}],
//	"sku_path": [{
//	"sku_id": "23",
//	"product_id": "17",
//	"sellprice": "2.00",
//	"basic_price": "4.00",
//	"cost_price": "0.50",
//	"unit_price": "4.00",
//	"attr": "属性:统一属性",
//	"sku_attr_info": [{
//	"attr_name": "属性",
//	"attr_value": "统一属性"
//	}],
//	"imgurl": "http:\/\/aweb.oss-cn-hangzhou.aliyuncs.com\/files\/20190924134730407.png",
//	"customer_plus_price": "0.00",
//	"customer_sale_price": "0.00",
//	"customer_sale_status": "1"
//	}]
//	},
//	"stock": null,
//	"activity_type": null,
//	"activity_num": null,
//	"activity_num_price": null,
//	"activity_discount": null
//	}],
//	"store_info": {
//	"name": "花花牛",
//	"img": "http:\/\/shanguang-img.oss-cn-qingdao.aliyuncs.com\/site-material\/onerror.png"
//	},
//	"customer_id": "2"
//	}
//	}




	HomepagebeanCallinfo callInfo;
	dynamic errorMsg;
	int errorCode;
	int success;

	HomepagebeanEntity({this.callInfo, this.errorMsg, this.errorCode, this.success});

	HomepagebeanEntity.fromJson(Map<String, dynamic> json) {
		callInfo = json['CallInfo'] != null ? new HomepagebeanCallinfo.fromJson(json['CallInfo']) : null;
		errorMsg = json['ErrorMsg'];
		errorCode = json['ErrorCode'];
		success = json['Success'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		if (this.callInfo != null) {
      data['CallInfo'] = this.callInfo.toJson();
    }
		data['ErrorMsg'] = this.errorMsg;
		data['ErrorCode'] = this.errorCode;
		data['Success'] = this.success;
		return data;
	}
}

class HomepagebeanCallinfo {
	String img;
	HomepagebeanCallinfoStoreInfo storeInfo;
	List<HomepagebeanCallinfoRotaryPlantingMap> rotaryPlantingMap;
	String customerId;
	List<HomepagebeanCallinfoNewArrival> newArrivals;

	HomepagebeanCallinfo({this.img, this.storeInfo, this.rotaryPlantingMap, this.customerId, this.newArrivals});

	HomepagebeanCallinfo.fromJson(Map<String, dynamic> json) {
		img = json['img'];
		storeInfo = json['store_info'] != null ? new HomepagebeanCallinfoStoreInfo.fromJson(json['store_info']) : null;
		if (json['rotary_planting_map'] != null) {
			rotaryPlantingMap = new List<HomepagebeanCallinfoRotaryPlantingMap>();(json['rotary_planting_map'] as List).forEach((v) { rotaryPlantingMap.add(new HomepagebeanCallinfoRotaryPlantingMap.fromJson(v)); });
		}
		customerId = json['customer_id'];
		if (json['new_arrivals'] != null) {
			newArrivals = new List<HomepagebeanCallinfoNewArrival>();(json['new_arrivals'] as List).forEach((v) { newArrivals.add(new HomepagebeanCallinfoNewArrival.fromJson(v)); });
		}
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['img'] = this.img;
		if (this.storeInfo != null) {
      data['store_info'] = this.storeInfo.toJson();
    }
		if (this.rotaryPlantingMap != null) {
      data['rotary_planting_map'] =  this.rotaryPlantingMap.map((v) => v.toJson()).toList();
    }
		data['customer_id'] = this.customerId;
		if (this.newArrivals != null) {
      data['new_arrivals'] =  this.newArrivals.map((v) => v.toJson()).toList();
    }
		return data;
	}
}

class HomepagebeanCallinfoStoreInfo {
	String img;
	String name;

	HomepagebeanCallinfoStoreInfo({this.img, this.name});

	HomepagebeanCallinfoStoreInfo.fromJson(Map<String, dynamic> json) {
		img = json['img'];
		name = json['name'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['img'] = this.img;
		data['name'] = this.name;
		return data;
	}
}

class HomepagebeanCallinfoRotaryPlantingMap {
	String level;
	String actionType;
	String icon;
	String id;
	String actionVal;

	HomepagebeanCallinfoRotaryPlantingMap({this.level, this.actionType, this.icon, this.id, this.actionVal});

	HomepagebeanCallinfoRotaryPlantingMap.fromJson(Map<String, dynamic> json) {
		level = json['level'];
		actionType = json['action_type'];
		icon = json['icon'];
		id = json['id'];
		actionVal = json['action_val'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['level'] = this.level;
		data['action_type'] = this.actionType;
		data['icon'] = this.icon;
		data['id'] = this.id;
		data['action_val'] = this.actionVal;
		return data;
	}
}

class HomepagebeanCallinfoNewArrival {
	List<String> forwardingImgs;
	dynamic activityDiscount;
	dynamic isMarket;
	String sellPrice;
	String supplyChannel;
	String isShowSpecs;
	String supplierIcon;
	dynamic activityNum;
	String forwardingDescription;
	dynamic activityNumPrice;
	String productId;
	dynamic activityType;
	dynamic activityId;
	String id;
	String supplierName;
	dynamic stock;
	String profit;
	String iconUrl;
	List<String> skuAttr;
	String isShowPrice;
	String brandName;
	String unitPrice;
	String rankPrice;
	String brandId;
	String unitName;
	HomepagebeanCallinfoNewArrivalsAttributeList attributeList;
	String name;
	String supplierId;

	HomepagebeanCallinfoNewArrival({this.forwardingImgs, this.activityDiscount, this.isMarket, this.sellPrice, this.supplyChannel, this.isShowSpecs, this.supplierIcon, this.activityNum, this.forwardingDescription, this.activityNumPrice, this.productId, this.activityType, this.activityId, this.id, this.supplierName, this.stock, this.profit, this.iconUrl, this.skuAttr, this.isShowPrice, this.brandName, this.unitPrice, this.rankPrice, this.brandId, this.unitName, this.attributeList, this.name, this.supplierId});

	HomepagebeanCallinfoNewArrival.fromJson(Map<String, dynamic> json) {
		forwardingImgs = json['forwarding_imgs']?.cast<String>();
		activityDiscount = json['activity_discount'];
		isMarket = json['is_market'];
		sellPrice = json['sell_price'];
		supplyChannel = json['supply_channel'];
		isShowSpecs = json['is_show_specs'];
		supplierIcon = json['supplier_icon'];
		activityNum = json['activity_num'];
		forwardingDescription = json['forwarding_description'];
		activityNumPrice = json['activity_num_price'];
		productId = json['product_id'];
		activityType = json['activity_type'];
		activityId = json['activity_id'];
		id = json['id'];
		supplierName = json['supplier_name'];
		stock = json['stock'];
		profit = json['profit'];
		iconUrl = json['icon_url'];
		skuAttr = json['sku_attr']?.cast<String>();
		isShowPrice = json['is_show_price'];
		brandName = json['brand_name'];
		unitPrice = json['unit_price'];
		rankPrice = json['rank_price'];
		brandId = json['brand_id'];
		unitName = json['unit_name'];
		attributeList = json['attribute_list'] != null ? new HomepagebeanCallinfoNewArrivalsAttributeList.fromJson(json['attribute_list']) : null;
		name = json['name'];
		supplierId = json['supplier_id'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['forwarding_imgs'] = this.forwardingImgs;
		data['activity_discount'] = this.activityDiscount;
		data['is_market'] = this.isMarket;
		data['sell_price'] = this.sellPrice;
		data['supply_channel'] = this.supplyChannel;
		data['is_show_specs'] = this.isShowSpecs;
		data['supplier_icon'] = this.supplierIcon;
		data['activity_num'] = this.activityNum;
		data['forwarding_description'] = this.forwardingDescription;
		data['activity_num_price'] = this.activityNumPrice;
		data['product_id'] = this.productId;
		data['activity_type'] = this.activityType;
		data['activity_id'] = this.activityId;
		data['id'] = this.id;
		data['supplier_name'] = this.supplierName;
		data['stock'] = this.stock;
		data['profit'] = this.profit;
		data['icon_url'] = this.iconUrl;
		data['sku_attr'] = this.skuAttr;
		data['is_show_price'] = this.isShowPrice;
		data['brand_name'] = this.brandName;
		data['unit_price'] = this.unitPrice;
		data['rank_price'] = this.rankPrice;
		data['brand_id'] = this.brandId;
		data['unit_name'] = this.unitName;
		if (this.attributeList != null) {
      data['attribute_list'] = this.attributeList.toJson();
    }
		data['name'] = this.name;
		data['supplier_id'] = this.supplierId;
		return data;
	}
}

class HomepagebeanCallinfoNewArrivalsAttributeList {
	List<HomepagebeanCallinfoNewArrivalsAttributeListAttribut> attribut;
	List<HomepagebeanCallinfoNewArrivalsAttributeListSkuPath> skuPath;

	HomepagebeanCallinfoNewArrivalsAttributeList({this.attribut, this.skuPath});

	HomepagebeanCallinfoNewArrivalsAttributeList.fromJson(Map<String, dynamic> json) {
		if (json['attribut'] != null) {
			attribut = new List<HomepagebeanCallinfoNewArrivalsAttributeListAttribut>();(json['attribut'] as List).forEach((v) { attribut.add(new HomepagebeanCallinfoNewArrivalsAttributeListAttribut.fromJson(v)); });
		}
		if (json['sku_path'] != null) {
			skuPath = new List<HomepagebeanCallinfoNewArrivalsAttributeListSkuPath>();(json['sku_path'] as List).forEach((v) { skuPath.add(new HomepagebeanCallinfoNewArrivalsAttributeListSkuPath.fromJson(v)); });
		}
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		if (this.attribut != null) {
      data['attribut'] =  this.attribut.map((v) => v.toJson()).toList();
    }
		if (this.skuPath != null) {
      data['sku_path'] =  this.skuPath.map((v) => v.toJson()).toList();
    }
		return data;
	}
}

class HomepagebeanCallinfoNewArrivalsAttributeListAttribut {
	String attrName;
	List<String> attributesItem;

	HomepagebeanCallinfoNewArrivalsAttributeListAttribut({this.attrName, this.attributesItem});

	HomepagebeanCallinfoNewArrivalsAttributeListAttribut.fromJson(Map<String, dynamic> json) {
		attrName = json['attr_name'];
		attributesItem = json['attributes_item']?.cast<String>();
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['attr_name'] = this.attrName;
		data['attributes_item'] = this.attributesItem;
		return data;
	}
}

class HomepagebeanCallinfoNewArrivalsAttributeListSkuPath {
	int customerPlusPrice;
	int customerSalePrice;
	int customerSaleStatus;
	String basicPrice;
	String skuId;
	String unitPrice;
	String imgurl;
	String maxPrice;
	String maxPlusPrice;
	String productId;
	String sellprice;
	List<HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo> skuAttrInfo;
	String attr;
	String costPrice;

	HomepagebeanCallinfoNewArrivalsAttributeListSkuPath({this.customerPlusPrice, this.customerSalePrice, this.customerSaleStatus, this.basicPrice, this.skuId, this.unitPrice, this.imgurl, this.maxPrice, this.maxPlusPrice, this.productId, this.sellprice, this.skuAttrInfo, this.attr, this.costPrice});

	HomepagebeanCallinfoNewArrivalsAttributeListSkuPath.fromJson(Map<String, dynamic> json) {
		customerPlusPrice = json['customer_plus_price'];
		customerSalePrice = json['customer_sale_price'];
		customerSaleStatus = json['customer_sale_status'];
		basicPrice = json['basic_price'];
		skuId = json['sku_id'];
		unitPrice = json['unit_price'];
		imgurl = json['imgurl'];
		maxPrice = json['max_price'];
		maxPlusPrice = json['max_plus_price'];
		productId = json['product_id'];
		sellprice = json['sellprice'];
		if (json['sku_attr_info'] != null) {
			skuAttrInfo = new List<HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo>();(json['sku_attr_info'] as List).forEach((v) { skuAttrInfo.add(new HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo.fromJson(v)); });
		}
		attr = json['attr'];
		costPrice = json['cost_price'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['customer_plus_price'] = this.customerPlusPrice;
		data['customer_sale_price'] = this.customerSalePrice;
		data['customer_sale_status'] = this.customerSaleStatus;
		data['basic_price'] = this.basicPrice;
		data['sku_id'] = this.skuId;
		data['unit_price'] = this.unitPrice;
		data['imgurl'] = this.imgurl;
		data['max_price'] = this.maxPrice;
		data['max_plus_price'] = this.maxPlusPrice;
		data['product_id'] = this.productId;
		data['sellprice'] = this.sellprice;
		if (this.skuAttrInfo != null) {
      data['sku_attr_info'] =  this.skuAttrInfo.map((v) => v.toJson()).toList();
    }
		data['attr'] = this.attr;
		data['cost_price'] = this.costPrice;
		return data;
	}
}

class HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo {
	String attrName;
	String attrValue;

	HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo({this.attrName, this.attrValue});

	HomepagebeanCallinfoNewArrivalsAttributeListSkuPathSkuAttrInfo.fromJson(Map<String, dynamic> json) {
		attrName = json['attr_name'];
		attrValue = json['attr_value'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['attr_name'] = this.attrName;
		data['attr_value'] = this.attrValue;
		return data;
	}
}
